/**
 *  @file SDLWindow.h
 *
 *  @date 18-nov-2009
 *  @author Ives van der Flaas
 */

#ifndef SDLWINDOW_H_
#define SDLWINDOW_H_

#include <SDL.h>
#include "SDLException.h"
#include "window.h"
#include <string>

namespace si_sdl
{

/**
 * A window owned by the SLD. Has a title and an icon.
 * Double buffered and 32 bit. Also initialises SDL_ttf
 */
class SDLWindow: public si::Window
{
public:
	SDLWindow(std::string titleBar);
	virtual ~SDLWindow();
	virtual void flip() throw( si_sdl::SDLException);

	SDL_Surface* getSurface() const { return fScreen; }
private:
	SDL_Surface* fScreen;
};

}

#endif /* SDLWINDOW_H_ */
